package com.lsl.prototype_pattern.example.deepcopy;

/**
 * description:
 *
 * @author: liushengli
 * data: 2022/12/15
 */
public class Client {

    public static void main(String args[]) {

        WeeklyLog log_previous, log_new = null;

        log_previous = new WeeklyLog(); //创建原型对象

        Attachment attachment = new Attachment(); //创建附件对象

        log_previous.setAttachment(attachment);  //将附件添加到周报中

        try {
            log_new = log_previous.deepClone(); //调用深克隆方法创建克隆对象
        } catch (Exception e) {
            System.err.println("克隆失败！");
        }
        //比较周报
        System.out.println("周报是否相同？ " + (log_previous == log_new));

        //比较附件
        System.out.println("附件是否相同？ " + (log_previous.getAttachment() == log_new.getAttachment()));
    }
}

